package sv.gob.mh.dgii.model;

// Generated Dec 10, 2007 4:52:21 PM by Hibernate Tools 3.2.0.beta7

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * DcSaldAntDet generated by hbm2java
 */
@Entity
@Table(name = "DC_SALD_ANT_DET", schema = "EDADEPUDOC", uniqueConstraints = {})
public class DcSaldAntDet implements java.io.Serializable {

	// Fields    

	/**
	 * 
	 */
	private static final long serialVersionUID = -7225188072592929146L;

	private DcSaldAntDetId id;

	private DcSaldAnt dcSaldAnt;

	private TbTransaccion tbTransaccion;

	private TbTransGrupo tbTransGrupo;

	private TbObligacion tbObligacion;

	private Date fpobligacion;

	private BigDecimal vimpuesto;

	private BigDecimal vmulta;

	private BigDecimal vtotalD;

	private String mtipoMov;

	private String sdocumento;

	private Integer baplicado;

	private BigDecimal vintereses;
	
	private String sobservacion;
	

	// Constructors


	/** default constructor */
	public DcSaldAntDet() {
	}

	/** minimal constructor */
	public DcSaldAntDet(DcSaldAntDetId id, DcSaldAnt dcSaldAnt,
			TbTransGrupo tbTransGrupo, TbObligacion tbObligacion,
			Date fpobligacion, BigDecimal vtotalD, String mtipoMov,
			String sdocumento, Integer baplicado) {
		this.id = id;
		this.dcSaldAnt = dcSaldAnt;
		this.tbTransGrupo = tbTransGrupo;
		this.tbObligacion = tbObligacion;
		this.fpobligacion = fpobligacion;
		this.vtotalD = vtotalD;
		this.mtipoMov = mtipoMov;
		this.sdocumento = sdocumento;
		this.baplicado = baplicado;
	}

	/** full constructor */
	public DcSaldAntDet(DcSaldAntDetId id, DcSaldAnt dcSaldAnt,
			TbTransaccion tbTransaccion, TbTransGrupo tbTransGrupo,
			TbObligacion tbObligacion, Date fpobligacion, BigDecimal vimpuesto,
			BigDecimal vmulta, BigDecimal vtotalD, String mtipoMov, String sdocumento,
			Integer baplicado, BigDecimal vintereses) {
		this.id = id;
		this.dcSaldAnt = dcSaldAnt;
		this.tbTransaccion = tbTransaccion;
		this.tbTransGrupo = tbTransGrupo;
		this.tbObligacion = tbObligacion;
		this.fpobligacion = fpobligacion;
		this.vimpuesto = vimpuesto;
		this.vmulta = vmulta;
		this.vtotalD = vtotalD;
		this.mtipoMov = mtipoMov;
		this.sdocumento = sdocumento;
		this.baplicado = baplicado;
		this.vintereses = vintereses;
	}

	// Property accessors
	@EmbeddedId
	@AttributeOverrides( {
			@AttributeOverride(name = "nfolio", column = @Column(name = "N_FOLIO", unique = false, nullable = false, insertable = true, updatable = true, length = 12)),
			@AttributeOverride(name = "ncorrelativo", column = @Column(name = "N_CORRELATIVO", unique = false, nullable = false, insertable = true, updatable = true, precision = 5, scale = 0)) })
	public DcSaldAntDetId getId() {
		return this.id;
	}

	public void setId(DcSaldAntDetId id) {
		this.id = id;
	}

	@ManyToOne(cascade = {}, fetch = FetchType.EAGER)
	@JoinColumn(name = "N_FOLIO", unique = false, nullable = false, insertable = false, updatable = false)
	
	public DcSaldAnt getDcSaldAnt() {
		return this.dcSaldAnt;
	}

	public void setDcSaldAnt(DcSaldAnt dcSaldAnt) {
		this.dcSaldAnt = dcSaldAnt;
	}

	@ManyToOne(cascade = {}, fetch = FetchType.EAGER)
	@JoinColumn(name = "I_TRANSACCION", unique = false, nullable = true, insertable = true, updatable = true)
	public TbTransaccion getTbTransaccion() {
		return this.tbTransaccion;
	}

	public void setTbTransaccion(TbTransaccion tbTransaccion) {
		this.tbTransaccion = tbTransaccion;
	}

	@ManyToOne(cascade = {}, fetch = FetchType.EAGER)
	@JoinColumn(name = "M_TIPO_DOC", unique = false, nullable = false, insertable = true, updatable = true)
	public TbTransGrupo getTbTransGrupo() {
		return this.tbTransGrupo;
	}

	public void setTbTransGrupo(TbTransGrupo tbTransGrupo) {
		this.tbTransGrupo = tbTransGrupo;
	}

	@ManyToOne(cascade = {}, fetch = FetchType.EAGER)
	@JoinColumn(name = "C_OBLIGACION", unique = false, nullable = false, insertable = true, updatable = true)
	public TbObligacion getTbObligacion() {
		return this.tbObligacion;
	}

	public void setTbObligacion(TbObligacion tbObligacion) {
		this.tbObligacion = tbObligacion;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "FP_OBLIGACION", unique = false, nullable = false, insertable = true, updatable = true, length = 7)
	public Date getFpobligacion() {
		return this.fpobligacion;
	}

	public void setFpobligacion(Date fpobligacion) {
		this.fpobligacion = fpobligacion;
	}

	@Column(name = "V_IMPUESTO", unique = false, nullable = true, insertable = true, updatable = true, precision = 13)
	public BigDecimal getVimpuesto() {
		return this.vimpuesto;
	}

	public void setVimpuesto(BigDecimal vimpuesto) {
		this.vimpuesto = vimpuesto;
	}

	@Column(name = "V_MULTA", unique = false, nullable = true, insertable = true, updatable = true, precision = 13)
	public BigDecimal getVmulta() {
		return this.vmulta;
	}

	public void setVmulta(BigDecimal vmulta) {
		this.vmulta = vmulta;
	}

	@Column(name = "V_TOTAL_D", unique = false, nullable = false, insertable = true, updatable = true, precision = 13)
	public BigDecimal getVtotalD() {
		return this.vtotalD;
	}

	public void setVtotalD(BigDecimal vtotalD) {
		this.vtotalD = vtotalD;
	}

	@Column(name = "M_TIPO_MOV", unique = false, nullable = true, insertable = true, updatable = true, length = 1)
	public String getMtipoMov() {
		return this.mtipoMov;
	}

	public void setMtipoMov(String mtipoMov) {
		this.mtipoMov = mtipoMov;
	}

	@Column(name = "S_DOCUMENTO", unique = false, nullable = false, insertable = true, updatable = true, length = 12)
	public String getSdocumento() {
		return this.sdocumento;
	}

	public void setSdocumento(String sdocumento) {
		this.sdocumento = sdocumento;
	}

	@Column(name = "B_APLICADO", unique = false, nullable = true, insertable = true, updatable = true, precision = 1, scale = 0)
	public Integer getBaplicado() {
		return this.baplicado;
	}

	public void setBaplicado(Integer baplicado) {
		this.baplicado = baplicado;
	}

	@Column(name = "V_INTERESES", unique = false, nullable = true, insertable = true, updatable = true, precision = 22, scale = 0)
	public BigDecimal getVintereses() {
		return this.vintereses;
	}

	public void setVintereses(BigDecimal vintereses) {
		this.vintereses = vintereses;
	}
	@Column(name = "S_OBSERVACION",  length =255)
	public String getSobservacion() {
		return sobservacion;
	}

	public void setSobservacion(String sobservacion) {
		this.sobservacion = sobservacion;
	}


}
